System and method for reconfiguration of an entertainment system controlling device

ABSTRACT

An entertainment device initiates a configuration process of a controlling device in response to a change in an audio visual entertainment system configuration in which at least one of a plurality devices is connected to the entertainment device as an audio and/or visual source and at least one of the plurality of devices is connected to the entertainment device as an audio and/or visual output destination for the entertainment device.

RELATED APPLICATION DATA

This application claims the benefit of and is a continuation of U.S.application Ser. No. 16/584,088, filed on Sep. 26, 2019, whichapplication claims the benefit of and is a continuation of U.S.application Ser. No. 16/381,278, filed on Apr. 11, 2019, whichapplication claims the benefit of and is a continuation of U.S.application Ser. No. 16/045,309, filed on Jul. 25, 2018, whichapplication claims the benefit of and is a continuation of U.S.application Ser. No. 15/786,852, filed on Oct. 18, 2017, whichapplication claims the benefit of and is a continuation of U.S.application Ser. No. 14/167,619, filed on Jan. 29, 2014, whichapplication claims the benefit of and is a continuation-in-part of U.S.application Ser. No. 13/785,015, filed on Mar. 5, 2103, whichapplication claims the benefit of and is a continuation of U.S.application Ser. No. 12/621,277, filed on Nov. 18, 2009, whichapplication claims the benefit of and is a continuation-in-part of U.S.application Ser. No. 12/569,121 filed Sep. 29, 2009, the disclosures ofwhich are incorporated herein by reference in the entirety.

BACKGROUND

Home entertainment systems in which multiple media sources and multiplemedia rendering devices are coupled through a central routing devicesuch as an AV receiver are well known in the art, as are universalcontrolling devices adaptable to issue commands to a multiplicity ofappliances of different manufacture and/or type and which are frequentlyassociated with such home entertainment systems. As these homeentertainment systems become increasingly complex due to theproliferation of media formats, appliance types, etc., the user actionsrequired to configure a home entertainment system to match a desiredactivity such as watching TV or listening to music have becomeincreasing onerous and error prone. Various methods have been proposedfor automating all or part of these configuration operations, forexample through use of controlling device based macro sequences such asdescribed in U.S. Pat. No. 5,959,751 or state-based control such asdescribed in U.S. Pat. No. 7,784,805. However, such methods maythemselves be subject to error when equipment configurations orconnections are not as expected, leading only to further userfrustration.

SUMMARY

This disclosure relates generally to improved methods for configuring amulti-input and/or multi-output home entertainment system to match auser's desired activities and/or to a method for configuring acontrolling device. In such systems, the outputs and inputs of thevarious components are generally routed to and switched through onecentral device such as an AV receiver. The inventive methods describedherein comprise a cooperative effort between the AV receiver and anassociated universal controlling device such as a remote control inwhich activation of an activity key or button on the controlling deviceresults in transmission of a signal to the AV receiver to initiatecertain previously defined configuration actions, which actions may beconditioned upon the AV receiver's determination of the current statusof connected devices. In addition, certain controlling device commandtransmissions to other appliances in the home entertainment system mayalso be initiated as a result of said activity key activation, eitherunilaterally by the controlling device or at the request of the AVreceiver. Since the AV receiver has access to appliance statusinformation not available to the controlling device (by virtue of the AVreceiver's physical connection to those appliances), and the controllingdevice in turn has access to appliance command functions not availableto the AV receiver, the cooperative execution of an activityconfiguration request in this manner may result in more reliable anduser-friendly system operation. In addition, since prior art initialuser set up of AV receivers is generally GUI based and includesassignment of user-friendly names to source and destination appliances(for example, “DVD” in place of “Video input 3”), a user's initialspecification of desired activity configurations may be facilitated bythe use of these features when configuring activities.

A better understanding of the objects, advantages, features, propertiesand relationships of the subject disclosure will be obtained from thefollowing detailed description and accompanying drawings which set forthillustrative embodiments and which are indicative of the various ways inwhich the principles of the subject disclosure may be employed.

BRIEF DESCRIPTION OF THE DRAWINGS

For a better understanding of the various aspects of the subjectdisclosure, reference may be had to preferred embodiments shown in theattached drawings in which:

FIG. 1 illustrates an exemplary system in which the methods of thesubject disclosure may be practiced;

FIG. 2 further illustrates an exemplary controlling device of the systemof FIG. 1;

FIG. 3 illustrates a block diagram of exemplary components of theexemplary controlling device of FIG. 2;

FIG. 4 illustrates a block diagram of exemplary components of an AVreceiver of the system of FIG. 1;

FIG. 5 illustrates an exemplary activity configuration setup process inaccordance with the methods of this subject disclosure;

FIG. 6 illustrates an exemplary activity switching process in accordancewith the methods of this subject disclosure;

FIG. 7 illustrates a second exemplary activity configuration setupprocess in accordance with the methods of this subject disclosure;

FIG. 8 illustrates an exemplary method for causing a configuring of acontrolling device in response to an appliance change being detected bythe AV receiver; and

FIG. 9 illustrates exemplary help information which may be presented toa user when it is detected that an appliance is not responding correctlyto command requests.

DETAILED DESCRIPTION

Turning now to FIG. 1, there is illustrated an exemplary homeentertainment system in which the audio/video outputs of a group ofvarious media source appliances such as for example a set top box(“STB”) 104, a first DVD player 106, a second DVD player 108, a gameconsole 110, and a CD changer 112 are all connected as inputs to an AVreceiver 102. AV receiver 102 in turn functions to switch the currentlydesired input media stream to one or more designated outputs of AVreceiver 102 which are, in turn, connected to various audio and/or videorendering devices such as TV 114, projector 118, and/or loudspeakers116; all as is well known in the art. In some embodiments AV receiver102 may also include a network interface 120, for example Ethernet, forthe routing of streaming media input/output from or to other areas ofthe home. When included, such a network interface may also be availablefor Internet access, download of firmware updates and/or other data intoAV receiver 102, etc., again as well known in the art. Also illustratedis a universal controlling device 100 which is capable of transmittingcommands to the appliances, using any convenient IR, RF, Point-to-Point,or networked protocol, to cause the appliances to perform operationalfunctions. While illustrated in the context of a home entertainmentsystem, it is to be understood that appliances controllable by universalcontrolling device 100 may include, but need not be limited to,televisions, VCRs, DVRs, DVD players, cable or satellite converterset-top boxes (“STBs”), amplifiers, AV receivers, CD players, gameconsoles, home lighting, drapery, fans, HVAC systems, thermostats,personal computers, etc. In a preferred embodiment, controlling device100 supports bidirectional communication 130 with AV receiver 102 viaany convenient IR or RF protocol.

In an exemplary embodiment, controlling device 100 may be furtheradapted to function in cooperation with AV receiver 102 to configure theillustrative entertainment system in accordance with a user's desiredactivities. To this end, as illustrated in FIG. 2, an exemplarycontrolling device may be provisioned with a series of activityselection keys or buttons 200 with designations such as, for example,“Watch TV”, “Watch a Movie”, “Listen to Music”, “Play a Game”, etc.Activation of such an activity selection key may cause AV receiver 102and/or controlling device 100 to cooperatively place the exemplary homeentertainment system into a user-specified state which has beenassociated with that activity, as will be described in further detailhereafter.

Turning now to FIG. 3, for use in commanding the functional operationsof one or more appliances, the controlling device 100 may include, asneeded for a particular application, a processor 300 coupled to a ROMmemory 304, a RAM memory 305, a key matrix 316 (e.g., hard keys, softkeys such as a touch sensitive surface overlaid on a liquid crystal(LCD), and/or an electroluminescent (EL) display), transmissioncircuit(s) and/or transceiver circuit(s) 310 (e.g., IR and/or RF), anon-volatile read/write memory 306, a means 302 to provide feedback tothe user (e.g., one or more LEDs, display, speaker, and/or the like), aninput/output port 318 such as a serial interface, USB port, modem,Zigbee, WiFi, or Bluetooth transceiver, etc., and clock and timer logic312 with associated crystal or resonator 314.

As will be understood by those skilled in the art, some or all of thememories 304, 305, 306 may include executable instructions(collectively, the controlling device program memory) that are intendedto be executed by the processor 300 to control the operation of theremote control 100, as well as data which serves to define to theoperational software the necessary control protocols and command valuesfor use in transmitting command signals to controllable appliances(collectively, the command data). In this manner, the processor 300 maybe programmed to control the various electronic components within theremote control 100, e.g., to monitor the key matrix 316, to cause thetransmission of signals, etc. The non-volatile read/write memory 306,for example an EEPROM, battery-backed up RAM, FLASH, Smart Card, memorystick, or the like, may additionally be provided to store setup data andparameters as necessary. While the memory 304 is illustrated anddescribed as a ROM memory, memory 304 can also be comprised of any typeof readable media, such as ROM, FLASH, EEPROM, or the like. Preferably,the memories 304 and 305 are non-volatile or battery-backed such thatdata is not required to be reloaded after battery changes. In addition,the memories 304, 305 and 306 may take the form of a chip, a hard disk,a magnetic disk, an optical disk, and/or the like. Still further, itwill be appreciated that some or all of the illustrated memory devicesmay be physically combined (for example, a single FLASH memory may belogically partitioned into different portions to support thefunctionality of memories 304 and 306 respectively), and/or may bephysically incorporated within the same IC chip as the microprocessor300 (a so called “microcontroller”) and, as such, they are shownseparately in FIG. 3 only for the sake of clarity.

To cause the controlling device 100 to perform an action, thecontrolling device 100 is adapted to be responsive to events, such as asensed user interaction with the key matrix 316, etc. In response to anevent, appropriate instructions within the program memory (hereafter the“controlling device operating program”) may be executed. For example,when a function key is actuated on the controlling device 100, thecontrolling device 100 may retrieve from the command data stored inmemory 304, 305, 306 a command value and control protocol correspondingto the actuated function key and, where necessary, current device modeand transmit that command to an intended target appliance, e.g., STB104, in a format recognizable by that appliance to thereby control oneor more functional operations of that appliance. It will be appreciatedthat the operating program can be used not only to cause thetransmission of commands and/or data to the appliances, but also toperform local operations. While not limiting, local operations that maybe performed by the controlling device 100 may include displayinginformation/data, favorite channel setup, macro key setup, function keyrelocation, etc. Examples of local operations can be found in U.S. Pat.Nos. 5,481,256, 5,959,751, and 6,014,092.

For selecting sets of command data to be associated with the appliancesto be controlled data may be provided to controlling device 100 thatserves to identify each intended target appliance by its make, and/ormodel, and/or type. Such data allows the controlling device 100 toidentify the appropriate command data set within a library of commanddata that is to be used to transmit recognizable commands in formatsappropriate for such identified appliances. Such a library of commanddata may be preprogrammed in controlling device 100, downloaded intocontrolling device 100 as part of the setup process, or a combinationthereof. The library of command data may represent a plurality ofcontrollable appliances of different types and manufacture, a pluralityof controllable appliances of the same type but different manufacture, aplurality of appliances of the same manufacture but different type ormodel, etc., or any combination thereof as appropriate for a givenembodiment. In certain embodiments, such data used to identify anappropriate command data set may take the form of a numeric setup code(obtained, for example, from a printed list of manufacturer names and/ormodels with corresponding code numbers, from a support Web site, etc.)which may be entered via activation of those keys that are also used tocause the transmission of commands to an appliance, preferably the keysthat are labeled with numerals.

Alternative device setup procedures known in the art include scanningbar codes, RFID tags, or other indicia; sequentially transmitting apredetermined command in different formats until a target applianceresponse is detected; interaction with a Web site culminating indownloading of command data and/or setup codes to the controllingdevice, etc. Further, in embodiments such as that illustrated in FIG. 1,set up of a controlling device 100 may be performed interactively inconjunction with AV receiver 102, using a connected device such as TV114 for GUI display and a database of codes and/or brand and modelinformation stored locally on AV receiver 102 or located remotely on aPC or Web server and accessed via network connection 120. Since suchmethods for setting up a controlling device to command the operation ofspecific home appliances are well-known, these will not be described ingreater detail herein. Nevertheless, for additional informationpertaining to setup procedures, the reader may turn, for example, toU.S. Pat. Nos. 4,959,810, 5,614,906, or 6,225,938 or to pending U.S.patent application Ser. No. 11/915,562, all of like assignee and allincorporated herein by reference in their entirety.

With reference to FIG. 4, an exemplary AV receiver 102 may include, asneeded for a particular application, a control processor 400 coupled toa memory 402 which may comprise any combination of ROM, RAM, and/ornon-volatile read write memory; video and audio processing sections 404,406; a tuner 408 for reception of radio broadcast channels; a frontpanel 410 including user controls and/or a display; a remote controlinterface 412 for communicating with a controlling device (e.g. 100); anetwork interface 414 for communication with a local and/or wide areanetwork; audio inputs 420 a through 420 c; video inputs 424 a through424 c; AV inputs 422 a through 422 c; audio outputs 430 a, 430 b; andvideo outputs 434 a and 434 b. As will be appreciated, audio and videoinputs and outputs (which may be more or less in number thanillustrated) may comprise analog or digital signals and exemplary AVreceiver 102 may be provisioned with analog-to-digital (ADC) converters,digital-to-analog (DAC) converters, video decoders, HDMIencoder/decoders, CODECs, format converters, etc., all as necessary toimplement the input/output switching and routing functionality. It willbe further appreciated that the functionality of video and audioprocessing blocks 404 and 408 may be implemented in separate componentssuch as a specialized digital signal processors (DSP), may beimplemented as part of control processor 400, or any combinationthereof, and that portions of memory 402 may be allocated to orassociated with audio and video processing blocks 404,408.

It will also be appreciated that some or all of the memory elements 402may take the form of a chip, a hard disk, a magnetic disk, an opticaldisk, FLASH memory, and/or the like, and that all or portion of thememory 402 may be physically incorporated within the same IC chip as thecontrol processor 400 and/or audio or video processing blocks 404,406and, as such, memory 402 is shown separately in FIG. 4 only for the sakeof clarity.

As will be understood by those skilled in the art, some or all of thememory 402 may include executable instructions that are intended to beexecuted by the processor 400 to control the operation of the AVreceiver 102 (hereafter, the “AV receiver operating program”). In thismanner, the processor 400 may be programmed to control the variouselectronic components within the AV receiver, e.g., to monitor the frontpanel 410 and or remote control interface 412, to cause the routing ofvideo and/or audio signals between the various inputs and outputs, tocontrol selection of radio broadcast channel by tuner 408, to controlvolume and equalization settings of audio outputs 430 a and 430 b, etc.Further, the AV receiver operating program, in conjunction with videoprocessing block 404, may provide GUI-based setup menus for AV receiverfunctions such as input and output assignments, levels, balances,equalization, etc., via a connected video monitor device such as forexample TV 114. Since such GUI-based AV receiver setup is well known inthe art, for the sake of brevity it will not be described furtherherein, however if greater detail is desired regarding such features andfunctionality the interested reader may reference, for example, adocument such as the Denon AV Surround Receiver STR-DA5500ES Owner'sManual (D&M Holdings Inc. publication number 5411 10255 000D).

In addition, in an exemplary embodiment described herein the AV receiveroperating program may include programming which functions in cooperationwith controlling device 100 to define and subsequently executeuser-desired configuration of the home entertainment system inaccordance with various activities.

With reference to FIG. 5, after completing the initial set up of AVreceiver 102, for example as described in the above referenced DenonSTR-DA5500ES User's Manual, a user may wish to configure thefunctionality of the activity buttons 200 of controlling device 100. Tothis end, she may place the AV receiver into an activity setup mode via,for example by a sequence of keypresses on controlling device 100, useof navigation keys 210 of controlling device 100 to select a menu itemdisplayed on TV 114, or such other action as may be appropriate for aparticular embodiment. Upon entering activity setup mode, the AVreceiver operating program may display an exemplary initial statusmessage 530 on TV 114 prompting the user to select an activity toconfigure. The AV receiver operating program thereafter waits at step502 for user input, i.e. activation of one of the activity buttons 200of controlling device 100. In the illustrated example, the user mayselect button 202 labeled “Watch a Movie”, resulting in communication bythe controlling device 100 of an appropriate key command value to AVreceiver 102. Upon receipt of the “Watch a Movie” activity command, atstep 504 the AV receiver operating program may display a listing 532 ofavailable source devices that are known to be connected to inputs 422,424 of AV receiver 102. In this context it will be appreciated that theearlier-mentioned initial setup procedures of AV receiver may includeuser labeling/identification of the devices connected to the variousinputs together with a selection of compatible command data sets withinuniversal controlling device 100, and the resulting user friendly labelssuch as “DVD player”, “Projector”, etc. may be used thereafter in thegeneration of displays such as that illustrated at 532. Additionally,the displayed listing may be further tailored by the AV receiveroperating program to include only those currently-configured devicesknown to be compatible with the specified activity—for example, for thepresently illustrated “Watch a Movie” activity devices which areincapable of sourcing a video stream, such as CD player 112 or tuner 408may be omitted from the list presented to the user. At step 506, theuser may employ navigation keys 210 of controlling device 100 to move acursor 536 and select desired source device(s). One or more sourcedevices may be selected, as indicated for example by indicia 534. In theevent more than one source device is designated, the user may beprompted at activity execution time to select the desired source, aswill be described in further detail hereafter in conjunction with FIG.6.

Upon completion of source device selection, at step 508 a list 538 ofpossible destination devices may be displayed for user selection at step510 in a similar manner to that described above. Once again, the list ofdevices may be tailored by the AV receiver operating program to include,in this case, only those currently-configured devices known to becapable of rendering the designated input media stream(s). Although notshown, it will be appreciated that other configuration options may alsobe presented to the user in certain embodiments, for example, selectionof a destination for audio output. Once all user selections have beenmade, at step 512 the activity configuration parameters may be finalizedand stored in AV receiver memory 402 for future use in configuring thehome entertainment system when the indicated activity is called for,e.g., the final configuration is stored and associated with the receivedkey command value corresponding to the activity key that was activatedat the start of the configuration process. Thereafter, the AV receiveroperating program may display a completion message 540, including inthis example a reminder 542 that final source selection will be requiredat execution time. At step 516, the user indicates whether she wishes toset up another activity, in which case processing returns to initialstep 502. If not, activity setup is complete and the AV receiveroperating program exits setup mode and returns to normal operation.

The execution of an exemplary activity configuration request will now bediscussed in conjunction with FIG. 6. Upon actuation of an activitybutton on controlling device 100, for example 202 “Watch a Movie” andreceipt of the resulting appropriate key command value communication byAV receiver 102, assuming the AV receiver operating program is in thenormal operation state (i.e. not in setup mode as described previously),at step 602 the AV receiver operating program first determines if theactivity by the key command value received from the controlling devicehas in fact been configured. If not, at step 624 an error message isdisplayed, for example on TV 114, prompting the user to first configurethat activity, and the activity request is ignored. If the activity hasbeen configured, at step 604 the AV receiver operating program nextdetermines from the configuration associated with the received keycommand value if multiple sources were configured. If so, at step 606the options are displayed as illustrated at 630 and the user is promptedto select a desired source device, for example, by using the navigationand selection keys of the controlling device to highlight and select thedesired source device. As will be appreciated, if only one source devicewas configured at setup time, this step may be skipped. Once a sourcedevice has been designated, at step 608 the AV receiver operatingprogram selects the audio, video and/or AV inputs associated with thedesignated source device. At step 610, the AV receiver operating programdetermines if the selected source device is powered on, for example bydetecting presence or absence of audio/video signal, sensing HDMIstatus, etc. as appropriate for the device connection in question.Alternatives such as power sensing, etc. may also be available incertain embodiments. If the selected source device is not powered on, ina preferred embodiment at step 612 a request may issued to controllingdevice 100 via bidirectional communication link 130 to transmit a “poweron” command to the source appliance. As will be appreciated, such arequest would include data that functions to indicate to the controllingdevice 100 the intended target appliance for the “power on” command.Thereafter, at step 614 the AV receiver operating program determines ifmultiple destinations were configured. If so, at step 616 the optionsare displayed as illustrated at 632 and the user prompted to select adesired destination device as described above. Again, if only onedestination device was configured at setup time, this step may beskipped. At step 618, the AV receiver operating program determines ifthe selected destination device is powered on, for example by sensingHDMI status. Alternatives such as detection of AV signals from anauxiliary output of a rendering device, power sensing, etc. may also beavailable in certain embodiments. If the selected destination device isnot powered on, in a preferred embodiment at step 620 a request may beissued to controlling device 100 via bidirectional communication link130 to transmit a “power on” command to the destination appliance.

While initiation of a “Watch a Movie” activity via key 202 may result inautomatic configuration of keys of the controlling device, e.g.,transport keys 240 may be configured to transmit commands in a formatcompatible with whichever of appliances 104, 106, 108 have beenpre-configured as the media source within the remote control when in the“Watch a Movie” activity mode, in the event that multiple possiblesources (or destinations) are possible in the “Watch a Movie” activitymode (which does not allow for a pre-configuration of the keys of thecontrolling device to a particular appliance), at step 622 dataindicative of the appliances to be controlled in the currently selectedactivity mode may be transferred over bidirectional communication link130 from the AV receiver operating program to controlling device 100 tocause the controlling device to configure itself to match the activityand selected source and destination appliances. It will also beappreciated that keys of the controlling device 100 may, in whole or inpart, be matched to an intended target appliance as a result of receiptof the aforementioned requests to power-on a device and, as such, step622 can be skipped if this data has already been provided to thecontrolling device by the AV receiver.

Although not illustrated in the example of FIG. 6, in certainembodiments additional appliance configuration may be initiated by theAV receiver operating program and/or the controlling device operatingprogram and performed by controlling device 100, for example issuance ofcommands for selection of an appropriate input on TV 114 or projector118, adjustment of video aspect ratio or picture settings to optimizepresentation of the selected source material, etc. Also, additionalactions may be initiated by the AV receiver operating program and/or thecontrolling device operating program with respect to appliances notparticipating in an activity. For example, initiation of a “Listen toMusic” activity may cause the controlling device itself, or result inthe issuance of requests to controlling device, to power off videodisplay devices such as TV 114 or projector 118.

In addition to the interactions with AV receiver 102 described above, incertain embodiments the activation of an activity selection button 200may also invoke a conventional controlling device-based macro commandsequence as is known in the art and described, for example, in thepreviously referenced U.S. Pat. No. 5,959,751. Such macro sequences maybe programmed by a user to, for example, adjust lighting levels, controldrapes, etc. to create an environment suitable for the commandedactivity, as well as to perform additional entertainment applianceconfiguration functions if desired.

Turning now to FIG. 7, in an alternative embodiment, a PC based activitysetup application may be offered in place of or as an alternative to theAV receiver GUI based setup previously described above in conjunctionwith FIG. 5. Such a PC based setup option may comprise a locallyinstalled application program, a Web application, or a combinationthereof. As illustrated in FIG. 7, the PC based setup application maycomprise a GUI 700 which offers a series of drop-down menus 702, 704from which the various configuration options may be selected. In theillustrative example, separate panels 706 and 708 allow selection andconfiguration of sources and outputs of an activity and selection andassignment of appliance/controlling device key functionality for thatactivity, respectively. As will be understood by those of skill in theart, in general two drop-down menus such as 710 and 716 may not beactive the same time, they are however illustrated as such in FIG. 7 toassist in a better understanding of the PC application. Drop down menupanel 706 may offer AV receiver related activity configuration choicessimilar to those previously described in conjunction with FIG. 5, and,to avoid repetition, these will not be repeated. In the illustratedexemplary embodiment, drop down menu panel 708 allows the controllingdevice key groups for volume control, channel changing and transport tobe pre-configured as appropriate. As an aid to the user, in someembodiments an image 712 of controlling device 100 may be displayed withthe affected key group highlighted—for example, when the drop down menu710 for transport keys is active, this group of keys 714 may behighlighted in displayed image 712. In some embodiments, default keyassignments may be dynamically established and displayed in panel 708 bythe PC application based upon the current activity configurationsettings. By way of example, if audio output for an activity is assignedto a set of speakers 718 connected to the output of AV receiver, thedefault volume key assignment 722 may be the AV receiver, whereas if theaudio output for the same activity were to be assigned to the TV device720, the default volume control key assignment may be the TV device. Inthis context, it will be appreciated that in certain embodimentsprovision may be made for uploading existing activity configurationsettings from an AV receiver into the PC application for editing by auser, in which instance the existing values may become the defaultsettings. It will be appreciated that in instances where more than oneinput or output device has been selected for an activity and the finalchoice is to be made at execution time as previously described, some orall of the drop down menu items in key configuration panel 708 may beomitted or replaced with generic designators such as “Audio destinationdevice” or “Video source”, etc.

Once all aspects of the activities match a user's requirements, the usermay cause the resulting configuration data to be downloaded into theexemplary AV receiver 102, for example via network interface 120 if boththe PC and AV receiver are connected to the same network. Alternatively,configuration data may be uploaded to a remote server for subsequentdownload to the AV receiver, copied to a memory stick or smart card forphysical transfer, etc. Additionally, controlling device 100 may becoupled to the PC and become the repository for some or all of theconfiguration data, either for later transfer to AV receiver 102, or fordirect action by controlling device 100.

In certain embodiments, the operating software of AV receiver 102 may beadapted to detect changes in connected appliances, for example bymonitoring disconnection and/or reconnection of interface cabling, byobserving changes in source or sink equipment identity or capabilitydata reported over an HDMI or other digital connection, by noting analteration in the bit rate or format of an input data stream, bydetecting connection of an interface cable or presence of a newaudio/video signal at a previously unused AV receiver input, or anyother appropriate method. The operating software of AV receiver 102 maythen respond to a detected change in the appliances connected thereto bytransmitting to the controlling device 100 a command communication forthe purpose of initiating at the controlling device 100 a setupprocedure whereby the controlling device 100 will, with the cooperationwith the AV receiver 102, attempt to configure itself to transmitcommands to one or more of the connected appliances for the purpose ofcontrolling functional operations of the one or more of the connectedappliances. For example, as illustrated in FIG. 8, the controllingdevice 100 may response to the command communication sent by the AVreceiver 102 by initiating a setup procedure in which the controllingdevice 100 transmits to an intended target appliance one or morecommands from various command sets for the purpose of causing theintended target appliance to transition into a state that is detectableby the AV receiver 102. When the AV receiver 102 detects that theintended target appliance responds to a command from a command set astransmitted by the controlling device 100, the AV receiver will transmitto the controlling device 100 a command to cause the controlling device100 to stop transmitting commands at which time the controlling device100 will configure itself to use the command set from which the responseeliciting command was sent, i.e., the command set having the lastcommand transmitted, when the controlling device 100 is thereafterplaced into a mode that is intended to control functional operations ofthat intended target appliance. In some instances, the command that istransmitted to the controlling device 100 from the AV receiver 102 forthe purposes of initiating this auto-configuration process may includedata, if available, that functions to inform the controlling device 100of the type of an appliance (e.g., TV, DVD player, etc.), and/or themake of the appliance (e.g., “Sony” brand, “Samsung” brand, etc.)whereby the controlling device 100 can use such provided information toremove from the command sets to be tested those command sets that arenot relevant to the appliance information so provided. It will also beunderstood that, if the type and/or make information provided by the AVreceiver 102 corresponds to only one possible command set, thecontrolling device 100 may simply configure itself to use that commandset when the controlling device 100 is thereafter placed into a modethat is intended to control functional operations of that intendedtarget appliance and thus may skip the testing, auto-configurationprocess described above. To the extent that the AV receiver might bewaiting for the controllable device to be placed into a state as part ofthe configuration process, the controlling device may use that commandset to issue a command to the controllable device to thereby place thecontrollable device into that state so the AV receiver will no longer belooking for that state and, accordingly, allow the AV receiver to exitthe configuration monitoring mode. It will also be understood that thecommand sets to be tested may be provided to the controlling device 100from an external source, such as server, a cable box, the AV receiver,or the like, as a part of the configuration process (with theunsuccessfully tested command sets then possibly being removed fromcontrolling device 100 upon completion of the configuration process),may be pre-stored in the controlling device 100 before the configurationprocess commences, or the like. It will be further understood that onlythe commands to be tested from the command sets could be provided to thecontrolling device 100 as a part of the configuration process with theentire command set that includes the command that elicited the desiredresponse being thereafter provided to the controlling device uponcompletion of the configuration process (with the testing commands thenpossibly being removed from the controlling device 100 upon completionof the configuration process).

In a further embodiment, the operating software of controlling device100 may be adapted to always echo certain commands to AV receiver 104,that is, upon actuation of certain functional keys, controlling device100 may sequentially transmit first a keypress notification to AVreceiver 104 and thereafter the appropriate command data in the formatrecognizable by the current target appliance. Using the receivedkeypress notification data, the operating software of AV receiver 104may be adapted to monitor the AV inputs and outputs for the expectedresult of a user appliance command. If the expected result does notoccur, an error message may be displayed to prompt the user to retry thecommand, check the operating mode of controlling device 100, etc. Forexample, if the currently selected activity is “Watch a Movie” and theoperating software of AV receiver 104 is notified by controlling device100 that the “Play” key 204 has been actuated, the operating software ofAV receiver 104 may inspect the DVD player input to discern if acorresponding change in AV input data has occurred, for example an audiocomponent has become present in a digital data stream where there wasnone before. Alternatively, the operating software may monitor thereported user activity on controlling device 100 for patterns indicativeof a problem. For example, repeated actuation of the “Play” key 204within a short space of time may indicate that an expected applianceresponse has not occurred. In either case, a message such as illustratedin FIG. 9 may be presented on a connected display such as TV 114 toassist the user in resolving the problem.

While various concepts have been described in detail, it will beappreciated by those skilled in the art that various modifications andalternatives to those concepts could be developed in light of theoverall teachings of the disclosure. For example, while described in thecontext of an AV receiver acting a central switching point for contentstreams in a home entertainment system, it will be appreciated that anyother suitably equipped device, for example an advanced cable orsatellite STB, a personal computer, etc., may be substituted for an AVreceiver in the practice of the subject disclosure. Further, while apreferred embodiment described above comprises a controlling devicecapable of bidirectional communication with an AV receiver or othercentral switching device, it will be appreciate that many of the stepsof the inventive methods may also be practiced in a system comprising acontrolling device which is in unidirectional (inward) communicationwith the central switching device, in which case certain controllingdevice actions may be initiated autonomously as macro sequences using,for example, discrete appliance commands as are know in the art.Furthermore, in the case of a unidirectional controlling device, it iscontemplated that, in lieu of receiving appliance indicating data fromthe AV receiver, the controlling device may be programmed wherebyactivation of a particular device mode key, e.g., cable, DVD, gameplayer, etc., is used by the controlling device to configure groups ofkeys of the controlling device to communicate commands to a one ofplural possible sources and/or destination appliances in a give activitymode, for example by activating the desired mode key(s) within apredetermined period of time after activation of the activity mode keywhen used to place the controlling device and AV receiver into thatactivity mode. Activation of a device mode key in this manner may alsobe used to cause the transmission of data to the AV receiver to therebycause the AV receiver to select one of multiple possible sources and/ordestinations in lieu of the menu navigation/selection method that wasalso previously described.

Still further, while described in the context of functional modules andillustrated using block diagram format, it is to be understood that,unless otherwise stated to the contrary, one or more of the describedfunctions and/or features may be integrated in a single physical deviceand/or a software module, or one or more functions and/or features maybe implemented in separate physical devices or software modules. It willalso be appreciated that a detailed discussion of the actualimplementation of each module is not necessary for an enablingunderstanding of the subject disclosure. Rather, the actualimplementation of such modules would be well within the routine skill ofan engineer, given the disclosure herein of the attributes,functionality, and inter-relationship of the various functional modulesin the system. Therefore, a person skilled in the art, applying ordinaryskill, will be able to practice the subject disclosure set forth in theclaims without undue experimentation. It will be additionallyappreciated that the particular concepts disclosed are meant to beillustrative only and not limiting as to the scope of the subjectdisclosure which is to be given the full breadth of the appended claimsand any equivalents thereof.

All patents cited within this document are hereby incorporated byreference in their entirety.

What is claimed is:
 1. A media device hub, comprising: a plurality ofHigh-Definition Multimedia Interface (HDMI) ports; a first moduleconfigured to manage device mappings in a device map, the device mapstoring an association between a first device that was previouslyconnected to and disconnected from the media device hub, an indicatedport of the plurality of HDMI ports to which the first device was atleast previously coupled, and a first indicator of the first device; asecond module configured to obtain, upon coupling a media device to themedia device hub, a second indicator from the media device coupled to acurrent port of the plurality of HDMI ports; and a third moduleconfigured to: determine whether the second indicator matches the firstindicator; in response to determining that the second indicator matchesthe first indicator, determine whether the current port is differentthan the indicated port; and in response to determining that the currentport is different than the indicated port, update the device map toindicate the first device as coupled to the current port.
 2. The mediahub device as recited in claim 1, further comprising a fourth module forproviding the updated device map to a controlling device for use by thecontrolling device in configuring an activity-based command sequencewhereby the controlling device will be adapted to transmit a command tothe media hub device to at least select the current port for purposes ofactively coupling the first device to the media hub device.
 3. The mediadevice hub of claim 1, wherein the first indicator comprises at leastone of a device signature or a device identifier.
 4. The media devicehub of claim 1, wherein the second module is configured to obtain thefirst indicator and the second indicator over a first HDMI port and asecond HDMI port, respectively.
 5. The media device hub of claim 1,wherein the first device is a source media device configured to providemultimedia content to a sink device.
 6. The media device hub of claim 5,further comprising: a switch circuit that is configured to automaticallyselect the current port in response to a request to retrieve themultimedia content from the first device.
 7. The media device hub ofclaim 1, wherein the second module is configured to obtain the secondidentifier during a device discovery process performed between the mediadevice hub and the media device.
 8. A method for identifying a coupleddevice, the method comprising: managing device mappings in a device map,the device map including a mapping between a first device that waspreviously coupled to and disconnected from a media device hub, anindicated port among a plurality of High-Definition Multimedia Interface(HDMI) ports to which the first device was at least previously coupled,and a first indicator of the first device; obtaining, upon coupling amedia device to the media device hub, a second indicator from the mediadevice coupled to a current port of the plurality of HDMI ports;determining whether the second indicator matches the first indicator; inresponse to determining that the second indicator matches the firstindicator, determining whether the current port is different than theindicated port; and in response to determining that the current port isdifferent than the indicated port, updating the device map to indicatethe first device as coupled to the current port.
 9. The method of claim8, wherein the first identifier comprises at least one of a devicesignature or a device identifier.
 10. The method of claim 8, furthercomprising: obtaining the first identifier and the second identifierover a first HDMI port and a second HDMI port, respectively.
 11. Themethod of claim 8, wherein the first device is a source media deviceconfigured to provide multimedia content to a sink device.
 12. Themethod of claim 11, further comprising: receiving a request to retrievemultimedia content from the first device; and automatically selectingthe current port in response to the request to retrieve the multimediacontent.
 13. The method of claim 8, wherein said obtaining the secondindicator comprises: obtaining the second indicator during a devicediscovery process performed between a media device hub and the mediadevice.
 14. A system comprising: a plurality of High-DefinitionMultimedia Interface (HDMI) ports; and one or more processing componentsto automatically identify a coupled device, the automatic identificationof the coupled device performed by: managing device mappings in a devicemap, the device map including a mapping between a first device that waspreviously coupled to and disconnected from the media device hub, anindicated port among the plurality of HDMI ports to which the firstdevice was at least previously coupled, and a first indicator of thefirst device; obtaining, upon coupling a media device to the mediadevice hub, a second indicator from the media device coupled to acurrent port of the plurality of HDMI ports; determining whether thesecond indicator matches the first indicator; in response to determiningthat the second indicator matches the first indicator, determiningwhether the indicated port is different than the current port; and inresponse to determining that the current port is different than theindicated port, updating the device map to indicate the first device ascoupled to the current port.
 15. The system of claim 14, wherein: thefirst indicator comprises a device identifier.
 16. The system of claim14, wherein the one or more processing components are further configuredto: obtain the first indicator and the second indicator over a firstHDMI port and a second HDMI port, respectively.
 17. The system of claim14, wherein the first device is a source media device configured toprovide multimedia content to a sink device.
 18. The system of claim 17,wherein the one or more processing components are further configured to:receive a request to retrieve multimedia content from the first device;and automatically select the current port in response to the request toretrieve the multimedia content.
 19. The system of claim 14, whereinsaid obtaining a second indicator comprises: obtaining the secondindicator during a device discovery process performed between a mediadevice hub and the media device.